import UIKit

@available(iOS 4.2, *)
extension QKC where AA :UIPrintInfo {
		// default is nil. set after user selects printer
    open func printerID_qk_s(_ printerID:  String? ) -> QKC<AA,YY,ZZ, String? >{
		return link(next: printerID).then_QK { $0.value.printerID = printerID }
	}
    open func printerID_qk_g() -> QKC<AA,YY,ZZ, String? >{
		 self +^ self.value.printerID
	}

		// default is application name
    open func jobName_qk_s(_ jobName:  String ) -> QKC<AA,YY,ZZ, String >{
		return link(next: jobName).then_QK { $0.value.jobName = jobName }
	}
    open func jobName_qk_g() -> QKC<AA,YY,ZZ, String >{
		 self +^ self.value.jobName
	}

		// default is UIPrintInfoOutputGeneral
    open func outputType_qk_s(_ outputType:  UIPrintInfo.OutputType ) -> QKC<AA,YY,ZZ, UIPrintInfo.OutputType >{
		return link(next: outputType).then_QK { $0.value.outputType = outputType }
	}
    open func outputType_qk_g() -> QKC<AA,YY,ZZ, UIPrintInfo.OutputType >{
		 self +^ self.value.outputType
	}

		// default is UIPrintInfoOrientationPortrait
    open func orientation_qk_s(_ orientation:  UIPrintInfo.Orientation ) -> QKC<AA,YY,ZZ, UIPrintInfo.Orientation >{
		return link(next: orientation).then_QK { $0.value.orientation = orientation }
	}
    open func orientation_qk_g() -> QKC<AA,YY,ZZ, UIPrintInfo.Orientation >{
		 self +^ self.value.orientation
	}

		// default is based on document type (none for photo, long edge for other)
    open func duplex_qk_s(_ duplex:  UIPrintInfo.Duplex ) -> QKC<AA,YY,ZZ, UIPrintInfo.Duplex >{
		return link(next: duplex).then_QK { $0.value.duplex = duplex }
	}
    open func duplex_qk_g() -> QKC<AA,YY,ZZ, UIPrintInfo.Duplex >{
		 self +^ self.value.duplex
	}

    open func dictionaryRepresentation_qk_g() -> QKC<AA,YY,ZZ, [AnyHashable : Any] >{
		 self +^ self.value.dictionaryRepresentation
	}

}

